package com.ruoyi.youyou.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.fk.domain.QuestionBank;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.youyou.mapper.SysYouYouUserMapper;
import com.ruoyi.youyou.domain.SysYouYouUser;
import com.ruoyi.youyou.service.ISysYouYouUserService;

/**
 * 用户信息Service业务层处理
 * 
 * @author youyou
 * @date 2025-08-13
 */
@Service
public class SysYouYouUserServiceImpl implements ISysYouYouUserService 
{
    @Autowired
    private SysYouYouUserMapper sysYouYouUserMapper;

    /**
     * 查询用户信息
     * 
     * @param userId 用户信息主键
     * @return 用户信息
     */
    @Override
    public SysYouYouUser selectSysYouYouUserByUserId(Long userId)
    {
        return sysYouYouUserMapper.selectSysYouYouUserByUserId(userId);
    }

    /**
     * 查询用户信息列表
     * 
     * @param sysYouYouUser 用户信息
     * @return 用户信息
     */
    @Override
    public List<SysYouYouUser> selectSysYouYouUserList(SysYouYouUser sysYouYouUser)
    {
        return sysYouYouUserMapper.selectSysYouYouUserList(sysYouYouUser);
    }

    /**
     * 新增用户信息
     * 
     * @param sysYouYouUser 用户信息
     * @return 结果
     */
    @Override
    public int insertSysYouYouUser(SysYouYouUser sysYouYouUser)
    {
        sysYouYouUser.setCreateTime(DateUtils.getNowDate());
        return sysYouYouUserMapper.insertSysYouYouUser(sysYouYouUser);
    }

    /**
     * 修改用户信息
     * 
     * @param sysYouYouUser 用户信息
     * @return 结果
     */
    @Override
    public int updateSysYouYouUser(SysYouYouUser sysYouYouUser)
    {
        sysYouYouUser.setUpdateTime(DateUtils.getNowDate());
        return sysYouYouUserMapper.updateSysYouYouUser(sysYouYouUser);
    }

    /**
     * 批量删除用户信息
     * 
     * @param userIds 需要删除的用户信息主键
     * @return 结果
     */
    @Override
    public int deleteSysYouYouUserByUserIds(Long[] userIds)
    {
        return sysYouYouUserMapper.deleteSysYouYouUserByUserIds(userIds);
    }

    /**
     * 删除用户信息信息
     * 
     * @param userId 用户信息主键
     * @return 结果
     */
    @Override
    public int deleteSysYouYouUserByUserId(Long userId)
    {
        return sysYouYouUserMapper.deleteSysYouYouUserByUserId(userId);
    }

    @Override
    public List<QuestionBank> selectQuestionBankListByUserId(Long userId) {
        return sysYouYouUserMapper.selectQuestionBankListByUserId(userId);
    }
}
